#

| Chapter 2 UNIX Commands |

## nl

    nl [options] [file]

Number the lines of `file` in logical page segments. Numbering resets to 1 at the start of each page.

### Options

-b`type`

  Number lines according to `type`. Values are:

  a | All lines.
  n | No lines.
  t | Text lines only (the default).
  p"`exp`" | Lines containing `exp` only.

-d`xy`

  Use characters `xy` to delimit logical pages (default is \:).

-f`type`

  Like -b but number footer (default `type` is n).

-h`type`

  Like -b but number header (default `type` is n).

-i`n`

  Increment each line number by `n` (default is 1).

-l`n`

  Count `n` consecutive blank lines as one line.

-n`format`

  Set line number `format`. Values are:

  ln

    Left justify, omit leading zeros.

  rn

    Right justify, omit leading zeros (default).

  rz

    Right justify.

-p

  Do not reset numbering at start of pages.

-s`c`

  Separate text from line number with character(s) `c` (default is a tab).

-v`n`

  Number each page starting at `n` (default is 1).

-w`n`

  Use `n` columns to show line number (default is 6).

### Examples

List the current directory, numbering files as 1), 2), etc.:

>     ls | nl -w3 -s')  '

Number C source code and save it:

>     nl prog.c > print_prog

Number only lines that begin with #include:

>     nl -bp"^#include" prog.c

Reference: nice |  | Reference: nm